package com.quanyan.place.entity;

import com.quanyan.common.Plugin.Page;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class TbBizPlaceUnitStatisticsExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    protected Page page;

    public TbBizPlaceUnitStatisticsExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setPage(Page page) {
        this.page=page;
    }

    public Page getPage() {
        return page;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andPlaceUnitIdIsNull() {
            addCriterion("place_unit_id is null");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdIsNotNull() {
            addCriterion("place_unit_id is not null");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdEqualTo(Integer value) {
            addCriterion("place_unit_id =", value, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdNotEqualTo(Integer value) {
            addCriterion("place_unit_id <>", value, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdGreaterThan(Integer value) {
            addCriterion("place_unit_id >", value, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("place_unit_id >=", value, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdLessThan(Integer value) {
            addCriterion("place_unit_id <", value, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdLessThanOrEqualTo(Integer value) {
            addCriterion("place_unit_id <=", value, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdIn(List<Integer> values) {
            addCriterion("place_unit_id in", values, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdNotIn(List<Integer> values) {
            addCriterion("place_unit_id not in", values, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdBetween(Integer value1, Integer value2) {
            addCriterion("place_unit_id between", value1, value2, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceUnitIdNotBetween(Integer value1, Integer value2) {
            addCriterion("place_unit_id not between", value1, value2, "placeUnitId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdIsNull() {
            addCriterion("place_id is null");
            return (Criteria) this;
        }

        public Criteria andPlaceIdIsNotNull() {
            addCriterion("place_id is not null");
            return (Criteria) this;
        }

        public Criteria andPlaceIdEqualTo(Integer value) {
            addCriterion("place_id =", value, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdNotEqualTo(Integer value) {
            addCriterion("place_id <>", value, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdGreaterThan(Integer value) {
            addCriterion("place_id >", value, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("place_id >=", value, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdLessThan(Integer value) {
            addCriterion("place_id <", value, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdLessThanOrEqualTo(Integer value) {
            addCriterion("place_id <=", value, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdIn(List<Integer> values) {
            addCriterion("place_id in", values, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdNotIn(List<Integer> values) {
            addCriterion("place_id not in", values, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdBetween(Integer value1, Integer value2) {
            addCriterion("place_id between", value1, value2, "placeId");
            return (Criteria) this;
        }

        public Criteria andPlaceIdNotBetween(Integer value1, Integer value2) {
            addCriterion("place_id not between", value1, value2, "placeId");
            return (Criteria) this;
        }

        public Criteria andIsSignIsNull() {
            addCriterion("is_sign is null");
            return (Criteria) this;
        }

        public Criteria andIsSignIsNotNull() {
            addCriterion("is_sign is not null");
            return (Criteria) this;
        }

        public Criteria andIsSignEqualTo(Byte value) {
            addCriterion("is_sign =", value, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignNotEqualTo(Byte value) {
            addCriterion("is_sign <>", value, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignGreaterThan(Byte value) {
            addCriterion("is_sign >", value, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignGreaterThanOrEqualTo(Byte value) {
            addCriterion("is_sign >=", value, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignLessThan(Byte value) {
            addCriterion("is_sign <", value, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignLessThanOrEqualTo(Byte value) {
            addCriterion("is_sign <=", value, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignIn(List<Byte> values) {
            addCriterion("is_sign in", values, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignNotIn(List<Byte> values) {
            addCriterion("is_sign not in", values, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignBetween(Byte value1, Byte value2) {
            addCriterion("is_sign between", value1, value2, "isSign");
            return (Criteria) this;
        }

        public Criteria andIsSignNotBetween(Byte value1, Byte value2) {
            addCriterion("is_sign not between", value1, value2, "isSign");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumIsNull() {
            addCriterion("week_hour_num is null");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumIsNotNull() {
            addCriterion("week_hour_num is not null");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumEqualTo(BigDecimal value) {
            addCriterion("week_hour_num =", value, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumNotEqualTo(BigDecimal value) {
            addCriterion("week_hour_num <>", value, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumGreaterThan(BigDecimal value) {
            addCriterion("week_hour_num >", value, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("week_hour_num >=", value, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumLessThan(BigDecimal value) {
            addCriterion("week_hour_num <", value, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumLessThanOrEqualTo(BigDecimal value) {
            addCriterion("week_hour_num <=", value, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumIn(List<BigDecimal> values) {
            addCriterion("week_hour_num in", values, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumNotIn(List<BigDecimal> values) {
            addCriterion("week_hour_num not in", values, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("week_hour_num between", value1, value2, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekHourNumNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("week_hour_num not between", value1, value2, "weekHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumIsNull() {
            addCriterion("week_sign_hour_num is null");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumIsNotNull() {
            addCriterion("week_sign_hour_num is not null");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumEqualTo(BigDecimal value) {
            addCriterion("week_sign_hour_num =", value, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumNotEqualTo(BigDecimal value) {
            addCriterion("week_sign_hour_num <>", value, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumGreaterThan(BigDecimal value) {
            addCriterion("week_sign_hour_num >", value, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("week_sign_hour_num >=", value, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumLessThan(BigDecimal value) {
            addCriterion("week_sign_hour_num <", value, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumLessThanOrEqualTo(BigDecimal value) {
            addCriterion("week_sign_hour_num <=", value, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumIn(List<BigDecimal> values) {
            addCriterion("week_sign_hour_num in", values, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumNotIn(List<BigDecimal> values) {
            addCriterion("week_sign_hour_num not in", values, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("week_sign_hour_num between", value1, value2, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignHourNumNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("week_sign_hour_num not between", value1, value2, "weekSignHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumIsNull() {
            addCriterion("week_prime_hour_num is null");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumIsNotNull() {
            addCriterion("week_prime_hour_num is not null");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumEqualTo(BigDecimal value) {
            addCriterion("week_prime_hour_num =", value, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumNotEqualTo(BigDecimal value) {
            addCriterion("week_prime_hour_num <>", value, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumGreaterThan(BigDecimal value) {
            addCriterion("week_prime_hour_num >", value, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("week_prime_hour_num >=", value, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumLessThan(BigDecimal value) {
            addCriterion("week_prime_hour_num <", value, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumLessThanOrEqualTo(BigDecimal value) {
            addCriterion("week_prime_hour_num <=", value, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumIn(List<BigDecimal> values) {
            addCriterion("week_prime_hour_num in", values, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumNotIn(List<BigDecimal> values) {
            addCriterion("week_prime_hour_num not in", values, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("week_prime_hour_num between", value1, value2, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekPrimeHourNumNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("week_prime_hour_num not between", value1, value2, "weekPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumIsNull() {
            addCriterion("week_sign_prime_hour_num is null");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumIsNotNull() {
            addCriterion("week_sign_prime_hour_num is not null");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumEqualTo(BigDecimal value) {
            addCriterion("week_sign_prime_hour_num =", value, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumNotEqualTo(BigDecimal value) {
            addCriterion("week_sign_prime_hour_num <>", value, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumGreaterThan(BigDecimal value) {
            addCriterion("week_sign_prime_hour_num >", value, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("week_sign_prime_hour_num >=", value, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumLessThan(BigDecimal value) {
            addCriterion("week_sign_prime_hour_num <", value, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumLessThanOrEqualTo(BigDecimal value) {
            addCriterion("week_sign_prime_hour_num <=", value, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumIn(List<BigDecimal> values) {
            addCriterion("week_sign_prime_hour_num in", values, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumNotIn(List<BigDecimal> values) {
            addCriterion("week_sign_prime_hour_num not in", values, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("week_sign_prime_hour_num between", value1, value2, "weekSignPrimeHourNum");
            return (Criteria) this;
        }

        public Criteria andWeekSignPrimeHourNumNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("week_sign_prime_hour_num not between", value1, value2, "weekSignPrimeHourNum");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}